package planes;
import java.awt.Point;

import javax.swing.ImageIcon;

import weaponrelated.bullet;
import GAME.game;
import weaponrelated.*;

public class mig extends enemy{
	
	
	public mig(game g){
		this.setIcon(new ImageIcon(getClass().getClassLoader().getResource("resources/migadelante.png")));
		down=true;
		up=false;
		right=false;
		left=false;		
		game=g;
		arma=new machinegun(game,this);
		hp=10;
		points=100;
		vel=6;
		this.setBounds(0, 0, 25, 35);
		
	}
	public void shoot(){
		arma.enemyshoot();
	}
	public void setmovimiento(boolean d,boolean l,boolean r){ //setea el tipo de movimiento del mig
		down=d;
		left=l;
		right=r;
	}
	public void mover(){ //mueve el mig segun su tipo de movimiento si se choca con una pared entonces cambia movimiento
		Point pos = this.getLocation();
		if(pos.getY()>game.getHeight())
			this.kill();
		else{
			int numAleatorio = (int) (Math.random()*50+1);
			if (numAleatorio==1){ // si numaleatorio es 1 cambio de movimiento
					numAleatorio = (int) (Math.random()*5+1);
					if (numAleatorio==1){ //mov abajo
						this.setmovimiento(true, false, false);
					}
					if (numAleatorio==2){ //mov derecha
						this.setmovimiento(false, false, true);
					}
					if (numAleatorio==3){ //mov izquierda
						this.setmovimiento(false, true, false);
					}
					if (numAleatorio==4){ //mov diagonalderecha
						this.setmovimiento(true, false, true);
					}
					if (numAleatorio==5){ //mov diagonalizquierda
						this.setmovimiento(true, true, false);
					}
				}
			
				numAleatorio = (int) (Math.random()*70+1);
				if (numAleatorio==1) //disparo random
					this.shoot();	
		if(down && !up && !left && !right){ // mov abajo
			this.setIcon(new ImageIcon(getClass().getClassLoader().getResource("resources/migadelante.png")));
			int v = pos.y + vel;
			pos.setLocation(pos.x, v);
			
		}
		if(left && !up && !right && !down){ // mov izquierda
			this.setIcon(new ImageIcon(getClass().getClassLoader().getResource("resources/migizquierda.png")));
			if(this.getX()>50){
						
				int v = pos.x - vel;
				pos.setLocation(v, pos.y);
			}
			else
				setmovimiento(false,false,true);
		}
		if(right && !up && !down && !left){ // mov derecha
			if(this.getX()<(game.getWidth()-50))
			{
				this.setIcon(new ImageIcon(getClass().getClassLoader().getResource("resources/migderecha.png")));
				int v = pos.x +vel;
				pos.setLocation(v, pos.y);
				}
			else
				this.setmovimiento(false, true, false);
		}
		
		if(right && !up && down && !left){ // mov derechaabajo
			if(this.getX()<(game.getWidth()-50)){
				this.setIcon(new ImageIcon(getClass().getClassLoader().getResource("resources/migderecha.png")));
				int v = pos.x + vel;
				pos.setLocation(v, pos.y);
				v = pos.y + vel;
				pos.setLocation(pos.x, v);
				}
			else
				this.setmovimiento(true, true, false);
		}
		if(left && !up && !right && down){ // mov izquierda abajo
			if(this.getX()>50){
				this.setIcon(new ImageIcon(getClass().getClassLoader().getResource("resources/migizquierda.png")));	
				int v = pos.x - vel;
				pos.setLocation(v, pos.y);				
				v = pos.y + vel;
				pos.setLocation(pos.x, v);
				
			}else
				this.setmovimiento(true, false, true);
		}
		this.setLocation(pos);
	}
	

}
}
